#include <cmath>
#include <iomanip>
#include <iostream>

using namespace std;

class Polygon {
public:
    int myEdge{};
    double myArea{};

    int getEdge() { return myEdge; }

    double getArea() { return myArea; }

    virtual void initEdge(int length) {}

    virtual void initArea() { myArea = 0; }

    bool operator>(const Polygon &polygon) { return (myArea > polygon.myArea); }
};

class Triangle : public Polygon {
public:
    void initEdge(int length) override { myEdge = length / 3; }

    void calculateArea() { myArea = myEdge * myEdge * sqrt(3) / 4.0; }
};

class Square : public Polygon {
public:
    void initEdge(int length) override { myEdge = length / 4; }

    void calculateArea() { myArea = (double)myEdge * myEdge; }
};

int main(int argc, char const *argv[]) {
    int length1, length2;
    while (cin >> length1) {
        cin >> length2;
        Triangle t;
        t.initEdge(length1);
        Square s;
        s.initEdge(length2);

        t.calculateArea();
        s.calculateArea();

        cout << fixed << setprecision(4) << t.getArea() << endl;
        cout << fixed << setprecision(4) << s.getArea() << endl;

        if (t > s) {
            cout << "Yes!" << endl;
        } else
            cout << "No!" << endl;
    }
    return 0;
}
